package com.bkgy.modularbx.theme.dto;

import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

import javax.validation.constraints.NotBlank;
import java.util.Date;

/**
 * 主题数据更新DTO
 *
 * @author trae
 */
@Data
@Schema(description = "主题数据更新参数")
public class ThemeDataUpdateDto {

    /**
     * 主题组ID，用于标识特定的主题组
     * 必填字段，作为更新操作的主键之一
     */
    @NotBlank(message = "主题组ID不能为空")
    @Schema(description = "主题组ID", required = true)
    private String themeGroupId;

    /**
     * 主题变量名，对应数据字典的变量名
     * 必填字段，作为更新操作的主键之一
     */
    @NotBlank(message = "主题变量名不能为空")
    @Schema(description = "主题变量名", required = true)
    private String themeVariable;

    /**
     * 产线编号，用于标识不同的生产线
     * 必填字段，用于关联特定的生产线
     */
    @NotBlank(message = "产线不能为空")
    @Schema(description = "产线", required = true)
    private String productionLine;

    /**
     * 主题变量描述，用于描述主题变量的用途
     * 必填字段，提供对主题变量的说明
     */
    @NotBlank(message = "主题变量描述不能为空")
    @Schema(description = "主题变量描述", required = true)
    private String themeVariableDescription;

    /**
     * 创建时间
     */
    private Date toc;

    /**
     * 修改时间
     */
    private Date tom;
}